8 research outputs found

    Sheduling approach for Microfactories with setup times.

    No full text
    International audienceIn this paper we consider microfactories for manipulation and assembly. These microfactories are composed of several cells containing microrobotic systems capable of a high level of repeatability. The assembly plan of the production is a pipeline of tasks that are performed by the cells. Our aim is to manage the production flow in the case where the cells can be reconfigured to perform different task types. Each cell is in charge of several consecutive tasks. A setup time is necessary to switch from the processing of one task type to another, and multiple intermediate results may be stored temporarily in storage areas to avoid switching the task type after the processing of each product. In this context we assess the optimized use of these storage areas, called buffers, and its impact on the production throughput

    Troughput optimization of linear multitask workflow applications on distributed platforms including setup times

    No full text
    Les travaux prĂ©sentĂ©s dans cette thĂšse portent sur l’ordonnancement d’applications multi-tĂąches linĂ©aires de type workflow sur des plateformes distribuĂ©es. La particularitĂ© du systĂšme Ă©tudiĂ© est que le nombre de machines composant la plateforme est plus petit que le nombre de tĂąches Ă  effectuer. Dans ce cas les machines sont supposĂ©es ĂȘtre capables d’effectuer toutes les tĂąches de l’application moyennant une reconfiguration, sachant que toute reconfiguration demande un temps donnĂ© dĂ©pendant ou non des tĂąches. Le problĂšme posĂ© est de maximiser le dĂ©bit de l’application,c’est Ă  dire le nombre moyen de sorties par unitĂ© de temps, ou de minimiser la pĂ©riode, c’est Ă  dire le temps moyen entre deux sorties. Par consĂ©quent le problĂšme se dĂ©compose en deux sous problĂšmes: l’assignation des tĂąches sur les machines de la plateforme (une ou plusieurs tĂąches par machine), et l’ordonnancement de ces tĂąches au sein d’une mĂȘme machine Ă©tant donnĂ© les temps de reconfiguration. Pour ce faire la plateforme dispose d’espaces appelĂ©s buffers, allouables ou imposĂ©s, pour stocker des rĂ©sultats de production temporaires et ainsi Ă©viter d’avoir Ă  reconfigurer les machines aprĂšs chaque tĂąche. Si les buffers ne sont pas prĂ©-affectĂ©s nous devons Ă©galement rĂ©soudre le problĂšme de l’allocation de l’espace disponible en buffers afin d’optimiser l’exĂ©cution de l’ordonnancement au sein de chaque machine. Ce document est une Ă©tude exhaustive des diffĂ©rents problĂšmes associĂ©s Ă  l’hĂ©tĂ©rogĂ©nĂ©itĂ© de l’application ; en effet si la rĂ©solution des problĂšmes est triviale avec des temps de reconfiguration et des buffers homogĂšnes, elle devient bien plus complexe si ceux-ci sont hĂ©tĂ©rogĂšnes. Nous proposons ainsi d’étudier nos trois problĂšmes majeurs pour diffĂ©rents degrĂ©s d’hĂ©tĂ©rogĂ©nĂ©itĂ© de l’application. Nous proposons des heuristiques pour traiter ces problĂšmes lorsqu’il n’est pas possible de trouver une solution algorithmique optimale.In this document we tackle scheduling problems of multitask linear workflow applications ondistributed platforms. In our particular problem the number of available machines on the platformis lower than the number of stages within the pipeline. The machines are then assumed to be able toperform any kind of task on the application given the appropriate reconfiguration (or setup), the catchbeing that any reconfiguration is time consuming. The problem that we try to solve is to maximizethe throughput of such applications, i.e., the mean amount of outputs per unit of time, or to minimizeits period, i.e., the average time between two outputs. As a result this problem is split into two subproblems:mapping tasks onto different machines of the platform (most machines will likely handleseveral tasks), and find an optimal schedule within a machine while taking setup times into account.To solve this we introduce buffers, which are spaces available for each machine to store temporaryproduction results and avoid reconfiguring after each task execution, and which may or may notbe already allocated for each stage. If those buffers are not already allocated to each task then athird problem must be solved to properly allocate the available space onto each buffer, as differentbuffer configurations have a huge impact on the scheduling of a machine. This document presentsan exhaustive coverage of the different problems that are associated with the heterogeneity of theapplication; the problems with homogeneous buffer capacities and setup times are rather simple tosolve, but they get a lot more complex as heterogeneity increases. We study the three main subproblemsfor each heterogeneity combination, and offer heuristic solution to solve them when anoptimal solution cannot be reasonably found

    Optimisation du débit pour des applications linéaires multi-tùches sur plateformes distribuées incluant des temps de reconfiguration

    No full text
    In this document we tackle scheduling problems of multitask linear workflow applications ondistributed platforms. In our particular problem the number of available machines on the platformis lower than the number of stages within the pipeline. The machines are then assumed to be able toperform any kind of task on the application given the appropriate reconfiguration (or setup), the catchbeing that any reconfiguration is time consuming. The problem that we try to solve is to maximizethe throughput of such applications, i.e., the mean amount of outputs per unit of time, or to minimizeits period, i.e., the average time between two outputs. As a result this problem is split into two subproblems:mapping tasks onto different machines of the platform (most machines will likely handleseveral tasks), and find an optimal schedule within a machine while taking setup times into account.To solve this we introduce buffers, which are spaces available for each machine to store temporaryproduction results and avoid reconfiguring after each task execution, and which may or may notbe already allocated for each stage. If those buffers are not already allocated to each task then athird problem must be solved to properly allocate the available space onto each buffer, as differentbuffer configurations have a huge impact on the scheduling of a machine. This document presentsan exhaustive coverage of the different problems that are associated with the heterogeneity of theapplication; the problems with homogeneous buffer capacities and setup times are rather simple tosolve, but they get a lot more complex as heterogeneity increases. We study the three main subproblemsfor each heterogeneity combination, and offer heuristic solution to solve them when anoptimal solution cannot be reasonably found.Les travaux prĂ©sentĂ©s dans cette thĂšse portent sur l’ordonnancement d’applications multi-tĂąches linĂ©aires de type workflow sur des plateformes distribuĂ©es. La particularitĂ© du systĂšme Ă©tudiĂ© est que le nombre de machines composant la plateforme est plus petit que le nombre de tĂąches Ă  effectuer. Dans ce cas les machines sont supposĂ©es ĂȘtre capables d’effectuer toutes les tĂąches de l’application moyennant une reconfiguration, sachant que toute reconfiguration demande un temps donnĂ© dĂ©pendant ou non des tĂąches. Le problĂšme posĂ© est de maximiser le dĂ©bit de l’application,c’est Ă  dire le nombre moyen de sorties par unitĂ© de temps, ou de minimiser la pĂ©riode, c’est Ă  dire le temps moyen entre deux sorties. Par consĂ©quent le problĂšme se dĂ©compose en deux sous problĂšmes: l’assignation des tĂąches sur les machines de la plateforme (une ou plusieurs tĂąches par machine), et l’ordonnancement de ces tĂąches au sein d’une mĂȘme machine Ă©tant donnĂ© les temps de reconfiguration. Pour ce faire la plateforme dispose d’espaces appelĂ©s buffers, allouables ou imposĂ©s, pour stocker des rĂ©sultats de production temporaires et ainsi Ă©viter d’avoir Ă  reconfigurer les machines aprĂšs chaque tĂąche. Si les buffers ne sont pas prĂ©-affectĂ©s nous devons Ă©galement rĂ©soudre le problĂšme de l’allocation de l’espace disponible en buffers afin d’optimiser l’exĂ©cution de l’ordonnancement au sein de chaque machine. Ce document est une Ă©tude exhaustive des diffĂ©rents problĂšmes associĂ©s Ă  l’hĂ©tĂ©rogĂ©nĂ©itĂ© de l’application ; en effet si la rĂ©solution des problĂšmes est triviale avec des temps de reconfiguration et des buffers homogĂšnes, elle devient bien plus complexe si ceux-ci sont hĂ©tĂ©rogĂšnes. Nous proposons ainsi d’étudier nos trois problĂšmes majeurs pour diffĂ©rents degrĂ©s d’hĂ©tĂ©rogĂ©nĂ©itĂ© de l’application. Nous proposons des heuristiques pour traiter ces problĂšmes lorsqu’il n’est pas possible de trouver une solution algorithmique optimale

    Optimizing memory allocation for multi stage scheduling including setup times

    Get PDF
    A preliminary version of this work as been published in APDCM 2014.International audienceMapping linear workflow applications onto a set of homogeneous processors can be optimally solved in polynomial time for the throughput objective with fewer processors than stages. This result even holds true, when setup times occur in the execution and homogeneous buffers are available for the storage of intermediate results. In this kind of applications, several computation stages are interconnected as a linear application graph, and each stage holds a buffer of limited size where intermediate results are stored and a processor setup time occurs when passing from one stage to another. In this paper, we tackle the problem where the buffer sizes are not given beforehand and have to be fixed before the execution to maximize the through-put within each processor. The goal of this work is to minimize the cost induced by the setup times by allocating buffers with proportional sizes of each other. We present a closed formula to compute the optimal buffer allocation in the case of non-decreasing setup costs in the linear application. For the case of unsorted setup times, we provide competitive heuristics that are validated via extensive simulation. Three non scalable brute force algorithms are also provided to compare heuristic approaches to optimal ones for small applications and to evaluate the relevance of our approac
    corecore